package com.fira.edu.domain.dto;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import javax.validation.constraints.*;
import java.util.Date;
import java.util.List;

/**
 * 小程序-课程排课DTO
 * @author tony
 * @date 2021-10-13
 */
@Data
@ApiModel(value="课程表排课入参",description="课程表排课管理入参")
public class CourseScheduleDTO {
    private String id;
//    @NotNull(message = "租户ID不能为空")
    @ApiModelProperty(value = "租户", required = true)
    private String tenantId;
    @NotNull(message = "课程ID不能为空")
    @ApiModelProperty(value = "课程", required = true)
    private String courseId;
    @NotNull(message = "班级ID不能为空")
    @ApiModelProperty(value = "班级", required = true)
    private String classId;
//    @NotNull(message = "课程开始日期不能为空")
    @ApiModelProperty(value = "课程开始日期", required = true)
//    @DateTimeFormat(pattern="yyyy-MM-dd")
    @JsonFormat(locale="zh", timezone="GMT+8", pattern="yyyy-MM-dd")
    private Date courseDate;
    @NotNull(message = "班主任不能为空")
    @ApiModelProperty(value = "班主任", required = true)
    private String headTeacherId;
    @NotNull(message = "教室不能为空")
    @ApiModelProperty(value = "教室", required = true)
    private String courseClassroomId;
    @NotNull(message = "排课时间列表JSON字符串不能为空")
    @ApiModelProperty(value = "排课时间列表JSON字符串", required = true)
    private String corseWeekListStr;
    /**
     * 排课时间列表
     */
//    @NotNull(message = "排课时间列表")
    @ApiModelProperty(value = "排课时间列表", required = false)
    private List<CourseScheduleTimeDTO> courseScheduleTimeDTOList;
}
